import { createRouter, createWebHistory } from 'vue-router'
import HomePage from '../pages/HomePage.vue'
import UserLoginPage from '../pages/user/UserLoginPage.vue'
import UserRegisterPage from '../pages/user/UserRegisterPage.vue'
import UserManagePage from '../pages/admin/UserManagePage.vue'
import ACCESS_ENUM from '@/access/accessEnum.ts'
import Layout from '@/layouts/BasicLayout.vue'
import NoAuth from '@/layouts/NoAuth.vue'
import AddPicturePage from '@/pages/AddPicturePage.vue'
import PictureManagePage from '@/pages/admin/PictureManagePage.vue'
import PictureDetailPage from '@/pages/PictureDetailPage.vue'

const router = createRouter({
  history: createWebHistory(import.meta.env.BASE_URL),
  routes: [
    {
      path: '/',
      name: 'Layout',
      component: Layout,
      children: [
        {
          path: '/',
          name: 'home',
          component: HomePage,
        },
        {
          path: '/user/login',
          name: '用户登录',
          component: UserLoginPage,
        },
        {
          path: '/user/register',
          name: '用户注册',
          component: UserRegisterPage,
        },
        {
          path: '/admin/userManage',
          name: '用户管理',
          component: UserManagePage,
          meta: {
            access: ACCESS_ENUM.ADMIN,
          },
        },
        {
          path: '/admin/pictureManage',
          name: '图片管理',
          component: PictureManagePage,
          meta: {
            access: ACCESS_ENUM.ADMIN,
          },
        },
        {
          path: '/add_picture',
          name:'创建图片',
          component: AddPicturePage
        },
        {
          path: 'picture/:id',
          name: '图片详情',
          component: PictureDetailPage,
          props:true
        }
      ],
    },
    {
      path: '/noAuth',
      name: '401无权限页面',
      component: NoAuth
    }
  ],
})

export default router
